[INFO] cloning repository https://github.com/iwantsomememories/kvs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/iwantsomememories/kvs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiwantsomememories%2Fkvs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiwantsomememories%2Fkvs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 706770100ac6144a8ba2db09eeb7743b60734d16
[INFO] checking iwantsomememories/kvs against master#43a4909ee98ed4d006d9d773f5d94dc58e34f846 for pr-157576
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fiwantsomememories%2Fkvs" "/workspace/builds/worker-1-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/iwantsomememories/kvs
[INFO] finished tweaking git repo https://github.com/iwantsomememories/kvs
[INFO] tweaked toml for git repo https://github.com/iwantsomememories/kvs written to /workspace/builds/worker-1-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/iwantsomememories/kvs on toolchain 43a4909ee98ed4d006d9d773f5d94dc58e34f846
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/iwantsomememories/kvs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded once_cell v1.21.1
[INFO] [stderr]   Downloaded slog v2.7.0
[INFO] [stderr]   Downloaded slog-async v2.8.0
[INFO] [stderr]   Downloaded panic-control v0.1.4
[INFO] [stderr]   Downloaded float-cmp v0.8.0
[INFO] [stderr]   Downloaded slog-term v2.9.1
[INFO] [stderr]   Downloaded predicates v1.0.8
[INFO] [stderr]   Downloaded rustix v1.0.3
[INFO] [stderr]   Downloaded criterion v0.3.6
[INFO] [stderr]   Downloaded criterion-plot v0.4.5
[INFO] [stderr]   Downloaded clap v4.5.32
[INFO] [stderr]   Downloaded clap_builder v4.5.32
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db
[INFO] running `Command { std: "docker" "start" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db" "/opt/rustwide/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db" "/opt/rustwide/cargo-home/bin/cargo" "+43a4909ee98ed4d006d9d773f5d94dc58e34f846" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling autocfg v0.1.8
[INFO] [stderr]    Compiling object v0.36.7
[INFO] [stderr]     Checking once_cell v1.21.1
[INFO] [stderr]    Compiling slog v2.7.0
[INFO] [stderr]    Compiling time-core v0.1.4
[INFO] [stderr]     Checking gimli v0.31.1
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking smallvec v1.14.0
[INFO] [stderr]    Compiling unicode-xid v0.2.6
[INFO] [stderr]     Checking log v0.4.26
[INFO] [stderr]    Compiling syn v2.0.100
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling failure_derive v0.1.8
[INFO] [stderr]     Checking miniz_oxide v0.8.5
[INFO] [stderr]     Checking deranged v0.4.1
[INFO] [stderr]    Compiling time-macros v0.2.22
[INFO] [stderr]     Checking rand_core v0.3.1
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking parking_lot_core v0.8.6
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]    Compiling slog-async v2.8.0
[INFO] [stderr]     Checking clap_builder v4.5.32
[INFO] [stderr]     Checking term v0.7.0
[INFO] [stderr]     Checking crossbeam-channel v0.5.14
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking crossbeam-skiplist v0.1.3
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]     Checking predicates-core v1.0.9
[INFO] [stderr]    Compiling rustix v1.0.3
[INFO] [stderr]     Checking parking_lot v0.11.2
[INFO] [stderr]     Checking rayon-core v1.12.1
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]    Compiling getrandom v0.3.2
[INFO] [stderr]     Checking float-cmp v0.8.0
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking sled v0.34.7
[INFO] [stderr]     Checking half v1.8.3
[INFO] [stderr]     Checking linux-raw-sys v0.9.3
[INFO] [stderr]     Checking bitflags v2.9.0
[INFO] [stderr]     Checking termtree v0.5.1
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking clap v2.34.0
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking csv-core v0.1.12
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking predicates-tree v1.0.12
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking criterion-plot v0.4.5
[INFO] [stderr]     Checking rand_isaac v0.1.1
[INFO] [stderr]     Checking rand_xorshift v0.1.1
[INFO] [stderr]     Checking rand_hc v0.1.0
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking rand_os v0.1.3
[INFO] [stderr]     Checking rand_jitter v0.1.4
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking crossbeam-utils v0.6.6
[INFO] [stderr]     Checking panic-control v0.1.4
[INFO] [stderr]     Checking time v0.3.41
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]    Compiling synstructure v0.12.6
[INFO] [stderr]     Checking addr2line v0.24.2
[INFO] [stderr]     Checking tempfile v3.19.1
[INFO] [stderr]     Checking slog-term v2.9.1
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling clap_derive v4.5.32
[INFO] [stderr]     Checking backtrace v0.3.74
[INFO] [stderr]     Checking predicates v1.0.8
[INFO] [stderr]     Checking failure v0.1.8
[INFO] [stderr]     Checking clap v4.5.32
[INFO] [stderr]     Checking serde_json v1.0.140
[INFO] [stderr]     Checking serde_cbor v0.11.2
[INFO] [stderr]     Checking csv v1.3.1
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking escargot v0.4.0
[INFO] [stderr]     Checking kvs v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking criterion v0.3.6
[INFO] [stderr]     Checking assert_cmd v0.11.1
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/engines/kvs.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KvStore {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 24 |     // 存储log文件的目录路径
[INFO] [stdout] 25 |     path: Arc<PathBuf>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KvStore` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Shutdown` is never constructed
[INFO] [stdout]   --> src/thread_pool/shared_queue.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | enum ThreadPoolMessage {
[INFO] [stdout]    |      ----------------- variant in this enum
[INFO] [stdout] 10 |     RunJob(Job),
[INFO] [stdout] 11 |     Shutdown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stdout] 9 | pub enum KvsError {
[INFO] [stdout]   |          -------- `KvsError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stdout] 9 | pub enum KvsError {
[INFO] [stdout]   |          -------- `KvsError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/kvs_bench.rs:47:15
[INFO] [stdout]    |
[INFO] [stdout] 47 |             |(mut store, _temp_dir)| {
[INFO] [stdout]    |               ----^^^^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/kvs_bench.rs:64:15
[INFO] [stdout]    |
[INFO] [stdout] 64 |             |(mut db, _temp_dir)| {
[INFO] [stdout]    |               ----^^
[INFO] [stdout]    |               |
[INFO] [stdout]    |               help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/kvs_bench.rs:93:21
[INFO] [stdout]    |
[INFO] [stdout] 93 |                 let mut store = KvStore::open(temp_dir.path()).unwrap();
[INFO] [stdout]    |                     ----^^^^^
[INFO] [stdout]    |                     |
[INFO] [stdout]    |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> benches/kvs_bench.rs:99:18
[INFO] [stdout]    |
[INFO] [stdout] 99 |             }, |(mut store, _temp_dir)| {
[INFO] [stdout]    |                  ----^^^^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/kvs_bench.rs:113:21
[INFO] [stdout]     |
[INFO] [stdout] 113 |                 let mut db = SledEngine::new(sled::open(&temp_dir
[INFO] [stdout]     |                     ----^^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> benches/kvs_bench.rs:120:18
[INFO] [stdout]     |
[INFO] [stdout] 120 |             }, |(mut db, _temp_dir)| {
[INFO] [stdout]     |                  ----^^
[INFO] [stdout]     |                  |
[INFO] [stdout]     |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `path` is never read
[INFO] [stdout]   --> src/engines/kvs.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub struct KvStore {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] 24 |     // 存储log文件的目录路径
[INFO] [stdout] 25 |     path: Arc<PathBuf>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `KvStore` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Shutdown` is never constructed
[INFO] [stdout]   --> src/thread_pool/shared_queue.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | enum ThreadPoolMessage {
[INFO] [stdout]    |      ----------------- variant in this enum
[INFO] [stdout] 10 |     RunJob(Job),
[INFO] [stdout] 11 |     Shutdown,
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Fail` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_KvsError`
[INFO] [stdout] 9 | pub enum KvsError {
[INFO] [stdout]   |          -------- `KvsError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: `#[warn(non_local_definitions)]` on by default
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item
[INFO] [stdout]  --> src/error.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[derive(Debug, Fail)]
[INFO] [stdout]   |                 ^---
[INFO] [stdout]   |                 |
[INFO] [stdout]   |                 `Display` is not local
[INFO] [stdout]   |                 move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_KvsError`
[INFO] [stdout] 9 | pub enum KvsError {
[INFO] [stdout]   |          -------- `KvsError` is not local
[INFO] [stdout]   |
[INFO] [stdout]   = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed
[INFO] [stdout]   = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive`
[INFO] [stdout]   = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl`
[INFO] [stdout]   = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint
[INFO] [stdout]   = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.19s
[INFO] running `Command { std: "docker" "inspect" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db", kill_on_drop: false }`
[INFO] [stdout] fc1b1b662491f6c33264e090fe66ba3e906787c2bfe57942bcd938713cb3a8db
